package com.supply.service;

import com.supply.pojo.TaskCompleteData;
import org.activiti.engine.task.Comment;
import org.activiti.engine.task.Task;

import java.util.List;

public interface TaskProcessService {
    //根据用户ID查询task任务信息
    List<Task> queryByUserId(Long id);

    //根据taskId获取关联的批注信息列表
    List<Comment> queryAllCommentByTaskId(String taskId);

    //根据TaskId获取当前任务可执行的命令
    List<String> queryButtonListByTaskId(String taskId);

    String getBusinessKeyByTaskId(String taskId);

    //流程推进
    void complete(TaskCompleteData taskCompleteData);

    //根据businessKey查询审核中的流程的批注信息
    List<Comment> getCurrentCommentsByBusinessKey(String businessKey);

    //根据businessKey查询审核完成的流程的批注信息
    List<Comment> getOverCommentsByBusinessKey(String businessKey);

    //根据taskId删除流程实例
    int deleteByTaskId(String taskId);

    //根据businessKey获取当前任务的处理进度
    String getCurrentProgress(String businessKey);
}
